''========================================================
'' Autor: 		Luis Antonio Lara Capetillo
'' Fecha Creación: 	1/10/2012
'' Descripcion: 	Clase Componente ctlGridEquipos
''========================================================

Public Class ctlGridEquipos

	  Public Event btnnidEquiposClicked As EventHandler
	  Public Event btnnidSelected As EventHandler
	  Public Event btnnidPage As GridViewPageEventHandler

#Region "Propiedades"
  ''' <summary>
  ''' Obtiene o establece el texto que contiene la etiqueta lblnidEquipos
  ''' </summary>
  ''' <value>valor tipo String</value>
  ''' <returns>valor tipo String</returns>
  ''' <remarks></remarks>
  Public Property lblnidEquiposTitulo() As String
    Get
      Return Me.lblnidEquipos.Text
    End Get
    Set(value As String)
      Me.lblnidEquipos.Text = value
    End Set
  End Property

  ''' <summary>
  ''' Obtiene o establece el texto que contiene la etiqueta lblcantidad
  ''' </summary>
  ''' <value>valor tipo String</value>
  ''' <returns>valor tipo String</returns>
  ''' <remarks></remarks>
  Public Property lblcantidadTitulo() As String
    Get
      Return Me.lblcantidad.Text
    End Get
    Set(value As String)
      Me.lblcantidad.Text = value
    End Set
  End Property

  ''' <summary>
  ''' Obtiene o establece el texto que contiene la etiqueta lblobservaciones
  ''' </summary>
  ''' <value>valor tipo String</value>
  ''' <returns>valor tipo String</returns>
  ''' <remarks></remarks>
  Public Property lblobservacionesTitulo() As String
    Get
      Return Me.lblobservaciones.Text
    End Get
    Set(value As String)
      Me.lblobservaciones.Text = value
    End Set
  End Property

  ''' <summary>
  ''' Obtiene o estable el valor nidEquipos del TextBox txtnidEquipos
  ''' </summary>
  ''' <value>valor tipo String</value>
  ''' <returns>valor tipo String</returns>
  ''' <remarks></remarks>
  Public Property nidEquipos() As String
    Get
      Return Me.txtnidEquipos.Text
    End Get
    Set(value As String)
      Me.txtnidEquipos.Text = value
    End Set
  End Property

  ''' <summary>
  ''' Obtiene o estable el valor cantidad del componente infcantidad
  ''' </summary>
  ''' <value>valor tipo String</value>
  ''' <returns>valor tipo String</returns>
  ''' <remarks></remarks>
  Public Property cantidad() As String
    Get
      Return Me.infcantidad.Text
    End Get
    Set(value As String)
      Me.infcantidad.Text = value
    End Set
  End Property

  ''' <summary>
  ''' Obtiene o estable el valor observaciones del TextBox txtobservaciones
  ''' </summary>
  ''' <value>valor tipo String</value>
  ''' <returns>valor tipo String</returns>
  ''' <remarks></remarks>
  Public Property observaciones() As String
    Get
      Return Me.txtobservaciones.Text
    End Get
    Set(value As String)
      Me.txtobservaciones.Text = value
    End Set
  End Property

  ''' <summary>
  ''' Habilita o Desabilita el Control para Edicion
  ''' </summary>
  ''' <value>True o False</value>
  ''' <remarks></remarks>
  Public WriteOnly Property Enabled() As Boolean
    Set(value As Boolean)
	  txtnidEquipos.Enabled=value
      btnnidEquipos.Enabled=value
      infcantidad.Enabled=value
      txtobservaciones.Enabled=value
      btnnid.Enabled=value
      
    End Set
  End Property

  ''' <summary>
  ''' Habilita o Desabilita el Control para solo lectura
  ''' </summary>
  ''' <value>True o False</value>
  ''' <remarks>ReadOnly</remarks>
  Public WriteOnly Property Lectura() As Boolean
    Set(value As Boolean)
	  txtnidEquipos.ReadOnly=value
      btnnidEquipos.ReadOnly=value
      infcantidad.ReadOnly=value
      txtobservaciones.ReadOnly=value
      btnnid.ReadOnly=value
      
    End Set
  End Property


#End Region
#Region "Eventos"
  Protected Sub btnnidEquipos_Click(sender As Object, e As System.Web.UI.ImageClickEventArgs) Handles btnnidEquipos.Click
    OnbtnnidEquiposClick(sender)
  End Sub

  ''' <summary>
  ''' Evento que se genera cuando se selecciona un objeto del btnnid
  ''' </summary>
  ''' <param name="sender"> es un Object</param>
  ''' <param name="e"> es de tipo EventArgs</param>
  ''' <remarks></remarks>
  Protected Sub btnnid_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles btnnid.SelectedIndexChanged
    OnbtnnidClick(sender)
  End Sub
  ''' <summary>
  ''' Evento que se genera cuando se selecciona una pagina del btnnid
  ''' </summary>
  ''' <param name="sender"> es un Object</param>
  ''' <param name="e"> es de tipo GridViewPageEventArgs</param>
  ''' <remarks></remarks>
  Protected Sub btnnid_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles btnnid.PageIndexChanging
    OnbtnnidSelectionPage(sender, e.NewPageIndex)
  End Sub

#End Region
#Region "Metodos"
  Protected Overridable Sub OnbtnnidEquiposClick(ByVal sender As Object)
    RaiseEvent btnnidEquiposClicked(sender, New EventArgs)
  End Sub

  Protected Overridable Sub OnbtnnidClick(ByVal sender As Object)
    RaiseEvent btnnidSelected(sender, New EventArgs)
  End Sub
  Protected Overridable Sub OnbtnnidSelectionPage(sender As Object, ByVal index As Integer)
    RaiseEvent btnnidPage(sender, New GridViewPageEventArgs(index))
  End Sub

  ''' <summary>
  ''' Metodo para asignar los datos al componente ctlTurismo
  ''' </summary>
  ''' <param name="tablaDatos">DataTable donde se obtienen los datos</param>
  ''' <remarks></remarks>
  Public Sub AsignarDatos(ByVal tablaDatos As DataTable)
    Me.txtnidEquipos.Text= tablaDatos.Rows(0)("nidEquipos").ToString
    Me.txtobservaciones.Text= tablaDatos.Rows(0)("observaciones").ToString
    
  End Sub

  ''' <summary>
  ''' Metodo para llenar el btnnid con datos de la table
  ''' </summary>
  ''' <param name="tabla">tabla donde se obtienen los datos</param>
  ''' <remarks></remarks>
  Public Sub llenarbtnnid(ByVal tabla As DataTable)
    Me.btnnid.DataSource = tabla
    Me.btnnid.DataBind()
  End Sub
  ''' <summary>
  ''' Metodo para Seleccionar la pagina de el btnnid
  ''' </summary>
  ''' <param name="e">es un evento de tipo GridViewPageEventArgs</param>
  ''' <remarks></remarks>
  Public Sub SelecPagebtnnid(ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs)
    Me.btnnid.PageIndex = e.NewPageIndex
    Me.btnnid.DataBind()
  End Sub


#End Region
End Class
